Each time a new card is opened, HyperCard send the openCard message. HyperBBS then sends an initCard message to the card. When the home stack gets the initCard message (i.e., it wasn't overriden by the card, background, or stack), it sends an initFields message and then a displayFields message.
The initFields message in turn causes any user-editable fields to be cleared out. (A field is considered user-editable if the string "-- editable" exists in its script; thus a field is not editable unless explicitly declared to be so by the BBS designer.)